﻿#define  _CRT_SECURE_NO_WARNINGS 1
//1.写⼀个函数Swap，可以交换两个整数的内容。注意必须实现成函数完成。
//输⼊2个整数，调⽤⾃定义函数Swap，完成2个整数的交换。
//测试1：
//输⼊：3 5
//输出：5 3
//测试2：
//输⼊：10 20
//输出：20 10
#include <stdio.h>
// 传入两个整型指针参数，进行交换
//void Swap(int* pa, int* pb)
//{
//	// 创建一个临时变量，暂时贮存a的值
//	int tmp = *pa;
//	*pa = *pb;
//	*pb = tmp;
//}
//
//int main()
//{
//	int a = 0;
//	int b = 0;
//	// 输入
//	printf("请你输入两个需要交换的数据：");
//	scanf("%d %d", &a, &b);
//	// 将需要交换值的两个整数变量的地址作为参数传递给函数，进行交换
//	Swap(&a, &b);
//	// 输出
//	printf("交换后的数据：%d %d\n", a, b);
//	return 0;
//}


//2.输⼊2个整数m和n，写⼀个函数average，求2个整数的平均值，考虑整数过⼤溢出的问题。
//测试1：
//输⼊：10 20
//输出：15
//测试2：
//输⼊：3 4
//输出：3
//测试3：
//输⼊：2000000000 2000000002
//输出：2000000001
//int average(int x, int y)
//{
//	return x + (y - x) / 2;  // 防止溢出
//}
//int main()
//{
//	int a = 0;
//	int b = 0;
//	printf("请你输入两个整数：");
//	scanf("%d %d", &a, &b);
//	int avg = average(a, b);
//	printf("这两个数的平均值是：%d\n", avg);
//	return 0;
//}



//3.写⼀个函数Strlen，可以求字符串⻓度，注：字符串的结束标志是 \0 .
//输⼊⼀个字符串（字符串⻓度⼩于等于30，中间不包含空格），使⽤Strlen函数可以求字符串的⻓
//度，并返回。
//测试1：
//输⼊：abcdef
//输出：6
//测试2：
//输⼊：abc defghi
//输出：10
//int Strlen(const char* str)
//{
//	// 定义变量计数
//	int count = 0;
//	// 利用指针遍历字符串
//	while (*str)
//	{
//		// 计数加1
//		count++;
//		//  字符串指针后移，遍历下一个字符
//		str++;
//	}
//	return count;
//}
//
//int main()
//{
//	char arr[31] = { 0 };
//	// 输入字符串
//	printf("请你输入一个字符串（字符串长度小于等于30，中间不包含空格）: ");
//	scanf("%[^\n]", arr);  // 读取字符串结束标志\0前的所有数据
//	// 求字符串长度
//	int len = Strlen(arr);
//	printf("字符串的长度是：%d\n", len);
//	return 0;
//}